package com.hczt.springcloud.servicefeign;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.netflix.feign.EnableFeignClients;
import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard;

/**
 * 把今天最好的表现当作明天最新的起点．．～
 * いま 最高の表現 として 明日最新の始発．．～
 * Today the best performance  as tomorrow newest starter!
 *
 * @author marvin.ma
 * @create 2017-10-20 16:42
 * @desc Eureka server 启动类
 *
 * Feign简介
 * Feign是一个声明式的伪Http客户端，它使得写Http客户端变得更简单。
 * 使用Feign，只需要创建一个接口并注解。它具有可插拔的注解特性，可使用Feign 注解和JAX-RS注解。
 * Feign支持可插拔的编码器和解码器。
 * Feign默认集成了Ribbon，并和Eureka结合，默认实现了负载均衡的效果。
 *
 * 简单说：Feign采用的是基于接口的注解，整合了ribbon
 * Feign具有如下特性：
	可插拔的注解支持，包括Feign注解和JAX-RS注解
	支持可插拔的HTTP编码器和解码器
	支持Hystrix和它的Fallback
	支持Ribbon的负载均衡
	支持HTTP请求和响应的压缩
 **/

@EnableEurekaClient
@EnableFeignClients
@EnableHystrixDashboard
@SpringBootApplication
public class ServiceFeignApplication {

	public static void main(String[] args) {
		SpringApplication.run(ServiceFeignApplication.class, args);
	}
}
